﻿using System;
using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
using Newtonsoft.Json;
using OfficeOpenXml.Table;
using SqlSugar;

namespace NP.BPMReportPlatform.PB.Dto
{
    [ExcelExporter(Name = "TU品保部模板配方及工艺变更通知", TableStyle = TableStyles.Light10, AutoFitAllColumn = true)]
    public class TUPFGYBGTZOutput
    {
        /// <summary>
        /// 流程状态
        /// </summary>
        [ExporterHeader(DisplayName = "流程状态")]
        public string OrderStatus { get; set; }

        /// <summary>
        /// 单据号
        /// </summary>
        [ExporterHeader(DisplayName = "流程编号")]
        public string InstanceNumber { get; set; }

        /// <summary>
        /// 申请时间
        /// </summary>
        [ExporterHeader(DisplayName = "申请时间")]
        public DateTime? ProcessStartTime { get; set; }

        /// <summary>
        /// 申请人
        /// </summary>
        [ExporterHeader(DisplayName = "申请人")]
        public string ProcessStartUserName { get; set; }

        /// <summary>
        /// 单据详情链接
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string Url { get; set; }

        /// <summary>
        /// 区域
        /// </summary>
        [ExporterHeader(DisplayName = "区域")]
        public string Area { get; set; }

        /// <summary>
        /// 工厂
        /// </summary>
        [ExporterHeader(DisplayName = "工厂")]
        public string Factory { get; set; }

        /// <summary>
        /// 产线
        /// </summary>
        [ExporterHeader(DisplayName = "产线")]
        public string Producline { get; set; }

        /// <summary>
        /// 操作类型
        /// </summary>
        [ExporterHeader(DisplayName = "操作类型")]
        public string OperateType { get; set; }

        /// <summary>
        /// 变更类型
        /// </summary>
        [ExporterHeader(DisplayName = "变更类型")]
        public string ChangeTypeName { get; set; }

        /// <summary>
        /// 变更物料编码
        /// </summary>
        [ExporterHeader(DisplayName = "变更物料编码")]
        public string MaterialCode { get; set; }

        /// <summary>
        /// 变更物料名称
        /// </summary>
        [ExporterHeader(DisplayName = "变更物料名称")]
        public string MaterialName { get; set; }

        /// <summary>
        /// 更改内容
        /// </summary>
        [ExporterHeader(DisplayName = "更改内容")]
        public string ChangeContent { get; set; }

        /// <summary>
        /// 更改理由
        /// </summary>
        [ExporterHeader(DisplayName = "更改理由")]
        public string ChangeReason { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [ExporterHeader(DisplayName = "备注")]
        public string Remark { get; set; }

    }
}